package com.orphan.marketFront.service;

import com.orphan.util.dto.OrderDto;
import com.orphan.util.dto.SettlementOrderDto;

import java.util.Map;

public interface IGoodsSettleService {

    /**
     * 商品结算:接收浏览器支付信息-传递给后端支付，并将订单保存进入数据库
     * @param
     * @return 结算结果
     */
    boolean goodsSettle(OrderDto orderDto);

    /**
     * 监听支付结果
     * @param map
     */
    void settlementListener(Map<String,Object> map);

    /**
     * 查询redis中的指定订单，返回支付结果，并将结果持久化到数据库
     * @param orderId 订单编号
     * @return
     */
    Integer checkPayment(String orderId);

    /**
     * 将支付成功的订单传递给后台进一步处理
     * @param  orderDto 订单
     */
    void postOrderMessage(OrderDto orderDto);

}
